package cc.rengu.igas.cops.common.constant;

/**
 * Created by WKF on 2020-04-28
 *
 * @author WKF
 * @date 2020-04-28 17:48
 */
public class CopsParamConstant {
    /**
     * 默认业务类型
     */
    public static final String DEFAULT_BIZ_TYPE = "00";
    public static final String COPS_TXNTYPE_PREFIX = "COPS_ESBSERVER_TXNNUM_TRANSFER";
    public static final String COPS_TXNKEY_PREFIX = "ESBTOCOPS_TXN_";
    /**
     * 支付密码允许错误次数
     */
    public static final int PASSWORD_ERR_TIMES = 5;

    /**
     * 系统编码
     */
    public static final String COPS_PARAM_CODE = "COPS";
    /**
     * opms src_sys_id 透传用
     **/
    public static final String OPMS_SRC_SYS_ID = "OPMS";
    /**
     * 营销产品编码
     */
    public static final String MOMP_PROD_CODE = "MOMP_PROD_CODE";
    //对外代付
    public static final String ALLOCATE = "10";//指定汇路
    public static final String PAYWAYTRANSFER = "PAYWAYTRANSFER";//对外代收付标志

    //银联四要素验证
    public static final String VERIFY_SUCCESS = "40";//验证通过
    public static final String VERIFY_FAILS = "30";//验证不通过
    public static final String REAL_NAME_VERIFY_SUCCESS = "00000000";//交易验证失败
    public static final String ESB_TRANS_SYCCESS = "821303";//交易验证失败

    public static final String UNIONPAY_8502 = "COPSUNIONPAY8502";  //老平台银联四要素开户认证（8502）参数
    public static final String BUSNTYP_CHANNEL = "BUSNTYP_CHANNEL";  //业务类型&渠道关系 即老平台的upay_biztype.busn_typ & ESB报文中的channel_id

    public static final String UNIONPAY_8503 = "COPSUNIONPAY8503";  //老平台银联四要素实名认证（8503）
    /*实时入账默认最小金额*/
    public static final String DEFAULT_REAL_TIME_PAY_MIN_AMT = "1";
    /**
     * 报文头版本号
     */
    public static final String DUBBO_VSERSION = "1.0.0";
    /*系统标识*/
    public static final String UNION_SYS_ID = "00000000000";

    /* 默认机构常量 */
    public static final String DEFAULT_INSTID = "00000000000000";
    /**
     * DUBBO 调用成功
     */
    public static final String DUBBO_SUCCESS = "00000000";
    /* 老收银台交易成功码 */
    public static final String OLD_PAYMENT_SUCCELL = "S000A000";
    /**
     * DUBBO 调用超时
     */
    public static final String DUBBO_OVERTIME = "98";
    /*超时*/
    public static final String COMMUNICATION_OVERTIME = "ES000098";
    /* ESB业务支撑交易 */
    public static final String DUBBO_BANK_SUP_SERVICE = "bankSupService";
    /**
     * ESB快捷支付
     */
    public static final String DUBBO_ESB_QUITCK_PAY_SERVICE = "quickPayEsbService";
    /**
     * DUBBO 网联通道接口
     */
    public static final String DUBBO_NUCC_ACQPAY_SERVICE = "NuccAcqPayService";
    /**
     * DUBBO 无卡快捷接口
     */
    public static final String DUBBO_NCQS_PAY_SERVICE = "NcqsPayService";
    /**
     * 银联全渠道token支付业务API组件
     */
    public static final String DUBBO_UPAC_TOKEN_PAY_SERVICE = "UpacTokenPayService";
    /**
     * 营销接口
     */
    public static final String DUBBO_MOMP_PAY_SERVICE = "paymentService";
    /*营销合并支付*/
    public final static String MOMP_PAYMENT_METHOD = "comboPayment";
    /*营销撤销*/
    public final static String MOMP_REVSAL_METHOD = "comboPaymentReversal";
    /* d0入账交易码 */
    public static final String D0_ACCOUTING_TXN_NUM = "P05PU000";

    /* -------------------dubbo服务bean及方法----------------------------- */
    /**
     * 线上收银台给能力开放平台的dubbo接口
     */
    public static final String DUBBO_OPMS_SERVICE = "pay4OpenService";
    /**
     * 线上收银台给能力开放平台的,对接老平台dubbo接口
     */
    public static final String DUBBO_OPMS_OLDSERVICE = "opmPayCopsService";
    /**
     * 线上收银台给能力开放平台的,对接老平台退款dubbo接口
     */
    public static final String DUBBO_OPMS_PAYREFUNDSERVICE = "OpmPayRefundService";
    /**
     * 收银台支付方法
     */
    public static final String DUBBO_METHOD_PAYFORCOPS = "payForCops";
    /**
     * 收银台退款方法
     */
    public static final String DUBBO_METHOD_REFUNDFORCOPS = "refundForCops";
    /**
     * 运营管理平台商户服务DUBBO接口
     */
    public static final String DUBBO_MOMP_MCHNT_MANAGE_SERVICE = "bompMchntManageService";
    /**
     * 商户基本信息管理方法
     */
    public static final String DUBBO_METHOD_MCHNTBASEINFOMANAGE = "mchntBaseInfoManage";
    /**
     * 网银互联dubbo接口
     */
    public static final String DUBBO_IBPS_SERVICE = "IbpsService";
    /**
     * 网银互联查证方法
     */
    public static final String DUBBO_METHOD_IBPSGENERALTRANSQUERY = "ibpsGeneralTransQuery";
    /**
     * 生成支付订单
     */
    public static final String DUBBO_GENPAY_ORDER_SERVICE = "genPayOrder";
    /**
     * 退款状态查询
     */
    public static final String DUBBO_REFUNDORDER_STATUSQUERY_SERVICE = "refundOrderStatusQuery";
    /**
     * 支付订单状态查询
     */
    public static final String DUBBO_PAY_ORDERSTATUS_QUERY = "payOrderStatusQuery";
    /**
     * 签约并支付
     */
    public static final String DUBBO_FISRTCARD_SIGNANDPAY = "fisrtCardSignAndPay";
    /*获取用户授权*/
    public static final String DUBBO_GET_USERAUTHCODE = "getUserAuthCodeService";
    /*生成动态二维码*/
    public static final String DUBBO_EMERGR_DYNAMICQRCODE = "genDynamicQrCode";
    /*微信统一下单接口*/
    public static final String DUBBO_WECHATORDER_SERVICE = "getWechatOrder";
    /*微信公共DUBBO服务*/
    public static final String DUBBO_WECHAR_PUBLICSERVICE = "wechatPubService";
    /*获取用户授权方法*/
    public static final String DUBBO_WECHATGETAUTHCODE_METHOD = "getAuthCode";
    /*支付宝公共DUBBO服务*/
    public static final String DUBBO_ALIPAY_PUBLICSERVICE = "alipayPubService";
    /*获取用户授权方法*/
    public static final String DUBBO_ALIAPYGERAUTHCODE_METHOD = "aliGetAuthCode";
    /*获取微信用户信息*/
    public static final String DUBBO_GETOPENID_METHOD = "getOpenId";
    /**
     * DUBBO 微信接口
     */
    public static final String DUBBO_WECHAT_PAY_SERVICE = "wechatPayService";
    /*微信统一下单接口*/
    public static final String DUBBO_WECHATUNIFIEDORDER_METHOD = "unifiedOrder";
    /*电子银行公共ESB服务*/
    public static final String DUBBO_EBANKSUPSERVICE = "ebankSupService";
    /*获取微信银行客户号方法*/
    public static final String DUBBO_WXEBANKGETCUSTMERID_METHOD = "ebankGetNetBankCustmerIdByToken";


    /**
     * DUBBO 短信信息推送短信平台
     */
    public static final String DUBBO_SMS_SEND_SERVICE = "smsPlatService";
    public static final String DUBBO_SMS_MSG_PUSH = "smsMsgPush";

    /* ---------------------- 退款接口 ----------------------- */
    /**
     * 微信支付退款
     */
    public static final String DUBBO_WECHAT_PAYREFUND = "wechatPayRefund";
    /**
     * 手机银行扫码支付退款
     */
    public static final String DUBBO_BANKSCAN_PAYREFUND = "bankScanPayRefund";
    /**
     * 支付宝扫码支付退款
     */
    public static final String DUBBO_ALIPAY_REFUND = "alipayRefund";
    /**
     * 银联云闪付sdk支付退款（全渠道wap支付）
     */
    public static final String DUBBO_UNIONSDK_PAYREFUND = "unionSdkPayRefund";
    /**
     * 银联云闪付扫码支付退款
     */
    public static final String DUBBO_UNION_PAYREFUND = "unionPayRefund";
    /**
     * 网关支付退款
     */
    public static final String DUBBO_GATEWAY_PAYREFUND = "gatewayPayRefund";
    /**
     * 快捷支付退款
     */
    public static final String DUBBO_CARDQUICK_PAYREFUND = "cardQuickPayRefund";
    /**
     * 手机SDK支付退款
     */
    public static final String DUBBO_BANKSDKPAY_REFUND = "bankSdkPayRefund";
    /**
     * 手机银行纯积分支付退款
     */
    public static final String DUBBO_BANKSCAN_SCOREPAY_REFUND = "bankScanScorePayRefund";
    /**
     * 手机银行纯积分支付退款
     */
    public static final String DUBBO_BANKSCANCARDSCORE_PAYREFUND = "bankScanCardScorePayRefund";
    /**
     * 支付订单退款
     */
    public static final String DUBBO_PAYORDER_REFUND = "payOrderRefund";
    //最快捷通道查询
    public static final String UPAC = "UPAC";
    public static final String ESB = "ESB";

    //银联无跳转预签约
    public static final String UPAC_TOKEN = "00";
    public static final String MCHNT_SIGN = "02";
    public static final String OPMS_SYS_PARAM = "OPMS_SYS_PARAM";
    /**
     * 银行级签约
     */
    public static final String BANK_SIGN = "00";


    /* ---------------------- 系统参数表参数类型及参数健值 -----------------------*/
    /**
     * 默认参数类型
     */
    public static final String COPS_SYS_PARAM = "COPS_SYS_PARAM";
    /**
     * 法人行银联机构号
     */
    public static final String CORPORATION_ORG_CODE = "CORPORATION_ORG_CODE";
    /**
     * 机构默认单笔限额
     */
    public static final String SINGLE_LIMIT_AMT = "SINGLE_LIMIT_AMT";
    /**
     * 机构默认单日限额
     */
    public static final String DAY_LIMIT_AMT = "DAY_LIMIT_AMT";
    /**
     * 认证限额
     */
    public static final String AUTH_LIMIT_AMT = "AUTH_LIMIT_AMT";
    /**
     * 免密限额
     */
    public static final String NO_PASSWD_LIMIT_AMT = "NO_PASSWD_LIMIT_AMT";
    /**
     * 银联商户号
     */
    public static final String UPAC_MCHNT_NO = "UPAC_MCHNT_NO";
    /**
     * 银联无跳转客户标识
     */
    public static final String UPAC_SIGN_TRID = "UPAC_SIGN_TRID";
    /**
     * 银联无跳转token类型
     */
    public static final String UPAC_TOKEN_TYPE = "UPAC_TOKEN_TYPE";
    /**
     * 异步通知地址
     */
    public static final String UPAC_BANK_URL = "backUrl";
    /**
     * 文件路径参数
     */
    public static final String FILE_PATH_PARAM = "FILE_PATH_PARAM";
    /**
     * 对账单文件路径
     */
    public static final String MCHNT_RECON_FILE_PATH = "MCHNT_RECON_FILE_PATH";
    /**
     * 会话时长-系统参数表参数key
     */
    public static final String SESSION_EXPIRY_TIMES = "SESSION_EXPIRY_TIMES";
    /**
     * 默认会话时长
     */
    public static final int SESSION_DEFAULT_TIMES = 300;

    /* －－－－－－－－DUBBO COPS 外放 OpmsOnlinePayCopsService  start－－－－－－－－－*/
    /**
     * 1 生成订单服务 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_GET_PAY_ORDER = "genPayOrder";
    /**
     * 2 支付订单状态查询 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_PAY_ORDER_STATUS_QUERY_RESPONSE = "payOrderStatusQueryResponse";
    /**
     * 3 支付订单退款 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_UNIFIED_PAY_ORDER_REFUND = "unifiedPayOrderRefund";
    /**
     * 4 退款状态查询 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_REFUND_ORDER_STATUS_QUERY = "refundOrderStatusQuery";
    /**
     * 5 担保支付确认 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_PAY_CONFIRM = "payConfirm";
    /**
     * 6 支付订单关闭 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_PAYORDER_CLOSE = "payOrderClose";
    /**
     * 7 获取用户授权 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_GET_USER_AUTH_CODE = "getUserAuthCode";
    /**
     * 8 -9 微信公众号支付 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_WECHAT_CREATE_ORDER = "wechatCreateOrder";
    /**
     * 11 购买卡券下单 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_GEN_COUPON_PAY_ORDER = "genCouponPayOrder";
    /**
     * 12 购买卡券退款 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_COUPON_PAY_ORDER_REFUND = "couponPayOrderRefund";
    /**
     * 13 购买卡券核销 －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_COUPON_REDEEM = "couponRedeem";
    /**
     * 14 获取外放页面URL －OpmsOnlinePayCopsService
     */
    public static final String DUBBO_GET_OUT_PAGE_URL = "getOutPageUrl";
    /**
     * 客户签约列表查询 -OpmsOnlinePayCopsService
     */
    public static final String DUBBO_SIGN_ACCT_QUERY = "signAcctInfoListQuery";
    /**
     * 银行卡签约三要素验证 -OpmsOnlinePayCopsService
     */
    public static final String DUBBO_AUTHENTICATION = "authentication";
    /**
     * 银行卡签约 -OpmsOnlinePayCopsService
     */
    public static final String DUBBO_CARD_SIGN = "cardSign";
    /**
     * 解除签约关系 -OpmsOnlinePayCopsService
     */
    public static final String DUBBO_RES_SIGN = "resSignInfo";
    /**
     * 申请图片验证码 -OpmsOnlinePayCopsService
     */
    public static final String DUBBO_GEN_IMAGE_AUTHCODE = "genImageAuthCode";
    /**
     * 发送短信验证码 -OpmsOnlinePayCopsService
     */
    public static final String DUBBO_APPLY_SMS_CODE = "applySmsCode";
    /**
     * 修改支付密码 -OpmsOnlinePayCopsService
     */
    public static final String DUBBO_MODIFY_PWD = "modifyPayPasswd";
    /**
     * 支付密码设置或重置 -OpmsOnlinePayCopsService
     */
    public static final String DUBBO_RESET_PWD = "resetOrSetPayPasswd";

    /*－－－－－－－－DUBBO COPS 外放 OpmsOnlinePayCopsService  end－－－－－－－－－*/


    /**
     * ------------------- 字符型数字 -------------------------
     */
    public static final String STR_ZERO = "0";
    public static final String STR_ONE = "1";
    public static final String STR_TWO = "2";
    public static final String STR_THREE = "3";
    public static final String STR_FORE = "4";
    public static final String STR_FIVE = "5";
    public static final String STR_SIX = "6";
    public static final String STR_SEVEN = "7";
    public static final String STR_EIGHT = "8";
    public static final String STR_NINE = "9";
    public static final String STR_99 = "99";
    public final static String SIGN_SEND_TIME = "signSendTime";
    /**
     * 签约订单号
     */
    public final static String SIGN_ORDER_ID = "signOrderId";
    public static final int INT_ZERO = 0;


    //快捷支付签约查询
    public static final String CARD = "2";
    public static final String CERT = "1";

    //快捷支付解约
    public static final String COPS_PARAM_YES = "Y";
    public static final String COPS_PARAM_NO = "N";

    //无卡快捷支付解约
    public static final String ENTITY_CONSUME = "100003";
    public static final String FULL_CONSUMPTION = "111011";
    public static final String IGAS = "IGAS";

    /**
     * 商户服务参数类型
     */
    public static final String MCHNT_PARAM_TYPE = "MCHNT_SERVICE";

    public static final String WECHAT_CHANID = "WECHAT";
    public static final String ALIPAY_CHANID = "ALIPAY";
    /**
     * 法人行的银联机构号
     */
    public static final String CUPS_INSR_ID = "unionPayOrgCode";
    /**
     * DES算法/模式/填充
     */
    public static final String ENC_PARA = "DES/ECB/PKCS7Padding";
    /*报文密钥别名*/
    public static final String EBUS_CER_MSG = "ebus_cer_msg";
    /*报文密钥别名 2048*/
    public static final String EBUS_CER_MSG_APP = "ebus_cer_msg_app";
    /*RSA算法/模式/填充*/
    public static final String RSA_ALGORITHM = "RSA/ECB/PKCS1Padding";

    /*扫码交易请求的.do*/
    public static final String SCAN_DO_METHOD = "PYCodePay";
    /*查询账号*/
    public static final String DUBBO_EBANKPERSONALACCTLIST_METHOD = "ebankPersonalAcctListQuery";
    /*根据token获取核心客户号*/
    public static final String DUBBO_EBANKWXGETCUSTMERID_METHOD = "ebankWxGetCustmerIdByToken";
    /*银行营销标识 01-商户营销  02-银行营销*/
    public static final String MCHNT_MARKETINF_FLAG = "01";
    /*无页面的微信公众号制度*/
    public static final String TRANSTYPE_AP15 = "AP15";
    /*无页面的支付宝公众号支付*/
    public static final String TRANSTYPE_AP16 = "AP16";
    /*微信小程序支付*/
    public static final String TRANSTYPE_AP30 = "AP30";
    /*直销银行*/
    public static final String TRANSTYPE_AP31 = "AP31";
    /*小程序获取openid*/
    public static final String DUBBO_METHOD_MINI_GEROPENID = "getopenid";
    /*小程序支付类型*/
    public static final String MINI_PAY_TYPE = "MINI";
    /*业务状态处理中*/
    public static final String BIZ_STATUS_01 = "01";


    public static final String AUTO_ROUTE_SELECT = "20";
    public static final String ESB_STATUS_COMPLETE = "COMPLETE";
    public static final String ESB_STATUS_FAIL = "FAIL";

    /*直销银行老平台页面*/
    public static final String RIZHAO_HTML_METHOD = "quickPayForRiZhao";
    /*敏感信息*/
    public final static String ENCRYPT_DATA = "encryptData";
    /**
     * AES密钥
     */
    public static final String AES_ENC_KEY = "AES_ENC_KEY";

    public static final String COPS_CHANNEL_PAY_MCHNT_NO_TRANSFER = "COPS_CHANNEL_PAY_MCHNT_NO_TRANSFER";

    public static final String COPS_TOKEN_PAY_PARAM = "COPS_TOKEN_PAY_PARAM";
    public static final String TOKEN_CUPS_MCHNT_NO = "TOKEN_CUPS_MCHNT_NO";
    public static final String TOKEN_CUPS_NOTIFY_URL = "TOKEN_CUPS_NOTIFY_URL";

    /*直连微信推送*/
    public final static String WECHAT_MSG_PUSH_SERVICE = "wechatMsgPushService";
    public final static String WXZF_FINANCIAL_TRANS_METHOM = "financialTransMsgPush";
    /*中金支付结果回调地址*/
    public static final String CNCP_RETURN_METHOD = "ebus_PYZhjPayReturn";
    public static final String ACCEPTANCS_SUCCESS = "S000A001";
    public static final String ESB_SUCCESS = "S000A000";

    /*个人网关回调地址*/
    public static final String EBUS_PYB2CPAGERETURN = "ebus_PYB2CPageReturn";
    /*企业网关回调地址*/
    public static final String EBUS_PYB2BPAGERETURN = "ebus_PYB2BPageReturn";

    /*SecondAcctRechargeService，需要调用核心打款*/
    public static final String PAYMENT_CALLHOST_REQUIRED = "COPS_PAYMENT_CALLHOST_REQUIRED";

    /*SecondAcctRechargeService, 调用核心打款的垫资户*/
    public static final String PAYMENT_INNERPAYERACCT = "COPS_PAYMENT_INNERPAYERACCT";


    public static final String UPGW_NOTICE_TXN_TYPE_PAY_RESULT_FINAL = "3012";

    public static final String UPGW_NOTICE_TXN_TYPE_REFUND_RESULT_FINAL = "3004";

    public static final String UPGW_NOTICE_TXN_TYPE_TRANS_STATUS = "3015";

    public static final String UPGW_NOTICE_TXN_TYPE_TRANS_RESULT = "3016";

    /*是否为GET请求*/
    public static final String IS_GET_REQUEST = "isGetRequest";

    /*对账单文件路径*/
    public static final String RECON_DETAIL_PATH = "reconDetailPath";

    /*二类户充值交易状态*/
    public static final String SUCC = "SUCC";    //成功
    public static final String FAIL = "FAIL";    //失败
    public static final String PROCESSING = "PROCESSING";  //处理中
    public static final String RECALLHOST = "RECALLHOST";  //重调核心

    public static final String GET_HEADER = "getHeader";//"getHeader"
    public static final String COPS_REFLECT_PARAM = "COPS_REFLECT_PARAM";//系统参数表-COPS反射参数

    /*代付请求报文加签序列*/
    public static final String COPS_PAY_TRANSFER_SIGN_REQ = "COPS_PAY_TRANSFER_SIGN_REQ";
    /*代付返回报文加签序列*/
    public static final String COPS_PAY_TRANSFER_SIGN_RES = "COPS_PAY_TRANSFER_SIGN_RES";
    /*代付交易码配置*/
    public static final String COPS_PAY_TRANSFER_TXN = "COPS_PAY_TRANSFER_TXN";
    /*是否需要检查付款账户*/
    public static final String NEED_CHECK_DRAWEEACCT = "NEED_CHECK_DRAWEEACCT";
    /* 代付POS银联商户号 */
    public static final String POS_PAYMENT_MCHNT_NO = "POS_PAYMENT_MCHNT_NO";
    public static final String ALIPAY_CONF_NODE = "aliPay";
    public static final String ALIPAY_AUTH_CODE_URL = "authCodeUrl";
    public static final String WECHAT_CONF_NODE = "wechat";
    public static final String WECHAT_AUTH_URL = "authUrl";
    /*平台级签约*/
    public static final String PLAT_SIGN = "01";
    /**
     * 手机6.0切换标识
     */
    public static final String NEW_MOBILE_PAY = "NEW_MOBILE_PAY";

    /*  移动收银台 */
    public static final String OPMS_H5 = "H5";
    public static final String CASHIER_H5_URL = "CASHIER_H5_URL";
    public static final String URL_OPMS_F5 = "#/online-payment?";
    /*  WEB收银台 */
    public static final String OPMS_WEB = "WEB";
    public static final String CASHIER_WEB_URL = "CASHIER_WEB_URL";
    public static final String URL_OPMS_WEB = "#/online-pay?";

    /* 收银台页面待过滤掉的参数列表 */
    public static final String NOT_PAGE_PARAM = "NOT_PAGE_PARAM";

    /*  默认订单有效期 */
    public static final String ORDER_EXPIRY_TIME = "ORDER_DEFAULT_EXPIRY_TIME";
    public static final String ORDER_DEFAULT_EXPIRY_TIME = "300";
}
